package cn.txun.csmall.product.springtest;

import org.springframework.context.annotation.*;


//加了ComponentScan注解，在注解中设置扫描的包路径
//如果该包中的类有组件注解(@Controller，@Service等)，
// Spring框架会创建并管理该类的对象
@ComponentScan("cn.txun.csmall.product.springtest")
public class StuConfig {
    //@Bean：spring框架扫描到这个注解后，会执行注解修饰的方法，
    // 将这个方法返回值对象以key-value放入Spring容器
    //Spring容器本质是一个Map，通过@Bean存入对象的key默认是方法名，value就是这个对象
    //可以在@Bean注解中添加一个参数，指定这个对象的key
   // @Scope("prototype")
    @Lazy
    @Bean(value = "stuu",initMethod = "init",destroyMethod = "destroy")
    public Stu stu(){
        Stu stu = new Stu();
        stu.setId(1);
        stu.setName("猪八戒");
        stu.setGender("男");
        return stu;
    }

    ///@Lazy
    //@Bean("abccontroller")
    public ABController abccontroller(){
        return new ABController();
    }
}
